package com.gp.service;

import java.util.List;

import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.plugins.pagination.Pagination;
import com.baomidou.mybatisplus.service.IService;
import com.gp.model.dto.Count;
import com.gp.model.entity.AccessLog;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 弓成龙
 * @since 2017-11-26
 */
public interface IBaseAccessLogsService extends IService<AccessLog> {
  
  /**
   * 查询接口访问量
   * @param page 查询条件
   * @return
   */
  Page listInterAccessCount(Page page);
  
  /**
   * 统计一个页面的pv
   * @param url
   * @param starttime
   * @param endtime
   * @return
   */
  Page<Count> listPV(String url, String starttime, String endtime);
  
  /**
   * 统计一个页面的pv
   * @param url
   * @param starttime
   * @param endtime
   * @return
   */
  Page<Count> listUV(String url, String starttime, String endtime);
  
  /**
   * 统计日活，月活
   * @return
   */
  Page<Count> listActive();
  
  /**
   * 统计留存转化
   * @return
   */
  Page<Count> listKeepOrTurn();
  
  /**
   * 网站访问量pv
   * @return
   */
  List<Count> countSiteAccessPV();
  
  /**
   * 网站访问量uv
   * @return
   */
  List<Count> countSiteAccessUV();
  
  /**
   * 浏览器访问占比
   * @return
   */
  List<Count> countBrowser();
	
}